package com.admin.business.voteEssentialInformation;

import com.tiangong.framework.bo.CDO;
import org.apache.ibatis.annotations.Mapper;
import java.util.List;

/**
 * @description: 首次成立业委会基本信息记录表
 * @create: 2022-07-08 19:04:49
 **/
@Mapper
public interface VoteEssentialInformationDao{
    /**
     * 添加首次成立业委会基本信息记录表数据
     */


    /**
     * 添加首次成立业委会基本信息记录表数据
     */
    void addOrUpdateVoteEssentialInformation(CDO cdo);

    /**
     * 根据Id更新首次成立业委会基本信息记录表数据
     */


    /**
     * 根据Id删除首次成立业委会基本信息记录表数据
     */
    int deleteVoteEssentialInformationById(Integer id);

    /**
     * 根据条件删除首次成立业委会基本信息记录表数据
     */
    int deleteVoteEssentialInformation(CDO cdo);

    /**
     * 根据条件获取首次成立业委会基本信息记录表数据
     */
    CDO getVoteEssentialInformation(CDO cdo);

    /**
     * 根据非空条件获取首次成立业委会基本信息记录表数据列表
     */
    List<CDO> getVoteEssentialInformationList(CDO cdo);

    /**
     * 根据非空条件获取首次成立业委会基本信息记录表数据列表条数
     */
    int getVoteEssentialInformationListCount(CDO cdo);

    /**
     * 根据混合条件获取首次成立业委会基本信息记录表数据列表
     */
    List<CDO> getVoteEssentialInformationListByCondition(CDO cdo);

    /**
     * 根据混合条件获取首次成立业委会基本信息记录表数据列表条数
     */


    /**
     * 获取首次成立业委会基本信息记录表数据条数
     */
    int getVoteEssentialInformationCount(CDO cdo);


//
    CDO getOneOwnerVoteEssentialInformation(CDO cdo);

    CDO getSysUserInfoByUserId(CDO cdo);
;
//    获取当基本和投票记录的信息
    CDO getVoteEssentialInfoStep(String code);

//    第二步打印


    CDO getVoteDownExceTemplateInfoOne(CDO cdo);

    CDO getVoteDownExceTemplateInfoTwo(CDO cdo);


//    查询字典表 获取什么省


//   获取省

    CDO getVoteAddressInformationProvince(String community_province);


    /**
     * 修改支付状态
     * @param cdo
     * @return
     */
    Integer updateVoteEssentialInformationDao(CDO cdo);




    //   查询模糊查询项目
   List<CDO> getVenusOrganizeProjectVoteCommunity(CDO cdo);

   int getOrganizeProjectCount(CDO cdo);

//    user_id查询基本和用户表
    int getVoteEssentialInfoUserInfo(CDO cdo);


//    enterVote 根据这个获取当前是cdo 还是list

    List<CDO> getVoteEssentialInfoUserInfoList(CDO cdo);

//     首页加载判断第几步

    CDO getVoteHomePageLoads(CDO cdo);

//    -业主端 和 门户网 pc个人中心 列表展示信息



    int getVoteEssentiPresentInformationCount(CDO cdo);




    int getVoteEssentiallInfoProjectCount(CDO cdo);







    //----------------------------2022-11-09，代码重构--------------------------------

    int getVoteEssentialInformationListByConditionCount(CDO cdo);

    //添加表决信息
    void addVoteEssentialInformation(CDO cdo);

    int updateVoteEssentialInformationById(CDO cdo);
    int updateVoteRecord(CDO cdo);

    //获取省市区集合信息
    List<CDO> getVoteAddressInformation(CDO cdo);


    List<CDO> getVoteEssentiPresentInformation(CDO cdo);


    CDO getVoteEssentialInformationById(Integer id);

    /*** 查询附议成功人数*/
    Integer getNumberOfSecondedProposalsTotal(String id);


    Double getNumberOfSecondedProposalsAreaSum(String id);


    CDO getVoteSecondedInfoByVoteId(String vote_id);
    CDO getVoteSecondedInfoById(String id);

    int updateAutoEndInfoById(CDO cdo);




    List<CDO> getVoteUserListByCDO(CDO cdo);
    int getVoteUserListByCDOTotal(CDO cdo);

    /*** 取消或恢复认证*/
    int cancelOrRecoverVoteUserInfoById(CDO cdo);


    CDO getVoteRecordInfoByCDO(CDO cdo);


    int endSecondedById(CDO cdo);

    String getUserIdByNameAndTel(String user_name,String user_tel);

    void addZhuYeMessage(CDO cdo);
    void addOwnerMessage(CDO cdo);

    CDO getVotePreparationLeader(CDO cdo);


    CDO getVoteUserInfoByVoeIdAndUserId(String user_id,String essential_information_id);


    Integer getPreparatoryGroupTotal(CDO cdo);

    Integer verifyPreparatoryGroupTotal(CDO cdo);

    List<CDO> getPublicityListById(String essential_information_id);

    CDO getPublicityById(String id);


    List<CDO> getVoteUserRecordListByCDO(CDO cdo);
    int getVoteUserRecordListByCDOTotal(CDO cdo);


    Double getAreaSumByCheckOrg(CDO cdo);



    List<CDO> getPreparatoryGroupListByTimer(CDO cdo);


    int updatePreparationsByCDO(CDO cdo);
    int updatePreparationsStateByCDO(CDO cdo);

    int updateMemberInfoByCDO(CDO cdo);

    int updateNegotiationInfoByCDO(CDO cdo);

    List<CDO> getPreparationUserListByOrder(CDO cdo);

    List<CDO> getNegotiationListByOrder(CDO cdo);


    List<CDO> getVoteFileList(CDO cdo);

    List<CDO> getOwnerAppVoteFileList(CDO cdo);

    CDO getVoteUserInfoByPhoneAndVoteId(String phone,String voteId);

    CDO getFileInfoByIdAndId(Integer statute_state ,String essential_information_id);


    int getRedDotsInfoByUserIdAndVoteId(String user_id,String vote_id);

    List<CDO> getOwnerAppVoteRecordListByCDO(CDO cdo);


    CDO verifyVoteProByProName(String community_name);

    List<CDO> getProListByProName(String pro_name);

    void addVoteDotsRecordInfo(CDO cdo);

    int getRedTotalByCDO(CDO cdo);

    void addVoteJumpStepInfo(CDO cdo);

    List<CDO> getClientUserListByOrder(CDO cdo);


    List<CDO> getThingsUserListPage(CDO cdo);

    int getThingsUserListTotal(CDO cdo);

    int getThingsInvolvedTotal(CDO cdo);

}
